home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1997 December
/
CHIP Turkiye Aralık 1997.iso
/
grafik
/
masterc
/
demo
/
disk1
/
demopost.pst
< prev
next >
Wrap
Text File
|
1994-11-23
|
31KB
|
758 lines
# --------------------------------------------------------------------------
#| MASTERCAM MP POST PROCESSOR | Always back up your post-processor |
#| CNC Software, Inc. | prior to making any changes. It's easy, |
#| Control Model: FANUC 6M+ | just put a floppy in drive a:, at DOS |
#| Machine Model: GENERIC | type "COPY C:\NC\*.PST A:" |
#| PST File Name: MPFAN.PST/TXT | |
#| Executable : MP.EXE 3.06 | |
# --------------------------------------------------------------------------
#
# ---------------
#| REVISION LOG |
# ------------------------------------------------------------------------
# Programmers Note:
# CNC 5/12/94 - Initial post setup for Mill5
#$Lgb$
# 1.0 Jph 08/19/94 Initial source control check-in
# 1.1 jph 08/24/94 Correct coolant text
# 1.2 jph 09/02/94 Ques. 86. was 0.2 delay
# 1.3 pdr 09/06/94 Updated and corrected numbered questions
# 1.4 pdr 09/07/94 Updated reverse post name (q 93.)
#$Lge$
#
# ---------------
#| FEATURES: |
# ------------------------------------------------------------------------
# Users Note:
#
# Following Misc_Reals & Misc_Integers are used:
#
# mi1 - Work coordinate system
# 0 = Reference return is generated and G92 with the
# X, Y and Z home positions at file head.
# 1 thru 3 = Reference return is generated and G92 with the
# X, Y and Z home positions at each tool.
# 4 thru 9 = The WCS of G54 thru G59 respectively at each tool.
#
# Options / Usage:
# It is recommended to start and end cutter compensation on a linear move.
# Rotary axis assumes a "Z" plunge at feed into part, position of the
# substituted axis at absolute zero position and the retraction from path
# by the post call to the G28 machine Z home position.
# --------------------------------------------------------------------------
# DEBUG/PROGRAM SWITCHES, debugging and program switches
# --------------------------------------------------------------------------
bug1 : 1 # 1 = Output post to screen, 2 = output leader to screen
bug2 : 0 # Append postline labels, non-zero is column position?
bug3 : 0 # Append whatline no. to each NC line?
bug4 : 0 # Append NCI line no. to each NC line?
whatno : yes # Do not perform whatline branches?
arcoutput : 0 # 0 = IJK, 1 = R no sign, 2 = R signed neg. over 180
breakarcs : no # Break arcs into quadrants?
stagetool : 0 # 0 = Do not pre-stage tools, 1 = Stage tools
use_gear : no # Set to yes to output gear range codes
# --------------------------------------------------------------------------
# FORMAT STATEMENTS - n=nonmodal, l=leading, t=trailing, i=inc, d=delta
# --------------------------------------------------------------------------
fs 1 0.4 #Decimal, absolute, 4 place
fs 2 0.4d #Decimal, delta
fs 3 1 0 #Integer, not leading
fs 4 2 0l #Integer, two leading
fs 5 3 0l #Integer, three leading
fs 6 4 0l #Integer, four leading
fs 7 0.1 #Decimal, absolute, 1 place
fs 8 0.2 #Decimal, absolute, 2 place
fs 9 0.3 #Decimal, absolute, 3 place
fs 10 0 4t #No decimal, absolute, four trailing
fs 11 0.4t #Decimal, absolute, four trailing
# --------------------------------------------------------------------------
# FORMAT ASSIGNMENTS
# --------------------------------------------------------------------------
# Axis output formats - Linear
# --------------------------------------------------------------------------
fmt X 1 x # X axis position
fmt Y 1 y # Y axis position
fmt Z 1 z # Z axis position
fmt X 1 xr # X rapid position from tool change
fmt Y 1 yr # Y rapid position from tool change
fmt Z 1 zr # Z rapid position from tool change
fmt X 1 xh # X home position
fmt Y 1 yh # Y home position
fmt Z 1 zh # Z home position
# --------------------------------------------------------------------------
# Axis output formats - Circular
# --------------------------------------------------------------------------
fmt I 2 i # Arc center description in X
fmt J 2 j # Arc center description in Y
fmt K 2 k # Arc center description in Z
fmt R 1 arcrad # Arc Radius
fmt R- 1 arcradm # Arc Radius over 180 degree sweep
# --------------------------------------------------------------------------
# Axis output formats - Rotary substitution
# --------------------------------------------------------------------------
fmt A 9 xangle # Linear to rotary calculation of X
fmt B 9 yangle # Linear to rotary calculation of Y
# --------------------------------------------------------------------------
# Program & Sequence number format
# --------------------------------------------------------------------------
fmt O 6 progno # Program number
fmt N 3 n # Sequence nos.
# --------------------------------------------------------------------------
# Tool format
# --------------------------------------------------------------------------
fmt T 3 t # Tool No
fmt T 3 first_tool# First Tool Used (bldnxtool: yes)
fmt T 3 next_tool # Next Tool Used (bldnxtool: yes)
fmt D 3 tloffno # Diameter Offset No
fmt H 3 tlngno # Length Offset No
fmt "TOOL - " 4 tnote # Note format
fmt "DIA. OFF. - " 4 toffnote # Note format
fmt "LENGTH - " 4 tlngnote # Note format
fmt "DIA. - " 11 tldia # Note format
# --------------------------------------------------------------------------
# Spindle Speeds & Feedrate output formats
# --------------------------------------------------------------------------
fmt S 6 speed # Spindle Speed
fmt F 8 fr # Feedrate
fmt F 7 frdeg # Feedrate for rotary
fmt M 3 gear # Gear range
# --------------------------------------------------------------------------
# Drill variable formats
# --------------------------------------------------------------------------
fmt G 3 drillref # Initial / Reference Toggle (G98/G99)
fmt P 10 dwell # Dwell
fmt Z 1 initht # Initial Height
fmt R 1 refht # Reference Height
fmt Z 1 depth # Depth
fmt Q 10 peck1 # First peck increment (positive)
fmt 1 peck2 # Second or last peck (positive)
fmt 1 peckclr # Safety distance
fmt 1 retr # Retract height
fmt F 8 frplunge # Plunge feedrate in drill cycles
# --------------------------------------------------------------------------
# Miscellaneous output formats
# --------------------------------------------------------------------------
fmt M 5 ssrange # Spindle Speed Range
fmt C 4 coolant # Coolant
# --------------------------------------------------------------------------
# INITIALIZE - initialize system variables and define user variables
# --------------------------------------------------------------------------
qtoolpln : no # MP386 - Enable tool plane option
qtoolopt : no # MP386 - Enable tool optimization
arctype : 2 # Arc center 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.
bldnxtool : yes # Build next tool table
ldrcode : 65 # Leader character dec. equiv. (fleader outputs code)
ncldr : 20 # No. of leader characters (fleader outputs code)
nobrk : no # Omit breakup of x/y & z rapid moves
omitcrlf : no # Omit CR/LF
omitrefht : no # Don't use reference height on first non-canned Z move
omitseq : no # Omit sequence no.
omitz : no # Omit first Z movement for non-canned-cycles
progname : 1 # Use uppercase for program name
scalex : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k
scaley : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k
scalez : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k
seqmax : 9999 # Max. sequence no.
skipmotest: no # Skip motion test in linear
spaces : 1 # No. of spaces to add between fields
tooltable : 1 # Read for tool table and pwrtt
absswp : 0 # Absolute sweep
drlgsel : -1 # Drill Select Initialize
maxfrdeg : 999 # Limit for feed in deg/min
absinc : 0 # Absolute/Incremental toggle for modality
tcnt : 0 # Count the number of tool changes
adelta : 0 # Calculation for deg/min
ldelta : 0 # Calculation for deg/min
zdelta : 0 # Calculation for deg/min
alzdelta : 0 # Calculation for deg/min
frdelta : 0 # Calculation for deg/min
frdegcalc : 0 # Calculation for deg/min
circum : 0 # Calculation for deg/min
rotstrt : 1 # Flag for first rotary position
# --------------------------------------------------------------------------
# FORMULAS - global formulas
# --------------------------------------------------------------------------
ssrange = mi3 # Gear Range Select
speed = abs ( ss ) # Absolute spindle speed
arcradm = arcrad # Negative arcrad
spdlsel = fsg3(ss) # Spindle on selector based on pos. or neg. ss
# --------------------------------------------------------------------------
# CANNED CYCLES - select long or short code
# --------------------------------------------------------------------------
usecandrill : yes # Use canned cycle for drill
usecanpeck : yes # Use canned cycle for Peck
usecanchip : yes # Use canned cycle for Chip Break
usecantap : yes # Use canned cycle for Tap
usecanbore1 : yes # Use canned cycle for Bore1
usecanbore2 : yes # Use canned cycle for Bore2
usecanmisc1 : yes # Use canned cycle for Misc1
usecanmisc2 : yes # Use canned cycle for Misc2
# --------------------------------------------------------------------------
# Lookup table definitions - for math functions FLOOK and FRANGE
# --------------------------------------------------------------------------
flktbl 1 3 # Lookup table definitions - table no. - no. entries
40 1000 # Low gear range
41 2500 # Med gear range
42 5000 # Hi gear range
# --------------------------------------------------------------------------
# Strings - String labels must start with 's' - they are not pre-assigned
# --------------------------------------------------------------------------
#Select operation note
sop00 NULL # String definition
sop01 2D-CONTOUR # " "
sop02 3D-CONTOUR # " "
sop03 DRILL/MISC # " "
sop04 POCKET.... # " "
sop05 RULED..... # " "
sop06 2D-SWEPT.. # " "
sop07 3D-SWEPT.. # " "
sop08 REVOLVED.. # " "
sop09 LOFT...... # " "
sop10 COONS..... # " "
sop11 TRIM ..... # " "
sop12 FILLET.... # " "
sop13 ROUGH..... # " "
sop14 OP14...... # " "
sop15 OP15...... # " "
sopnote # Target string
fstrsel sop00 opcode sopnote
# --------------------------------------------------------------------------
# Select motion G code
sg00 G0 # Linear movement at rapid feedrate
sg01 G1 # Linear movement at feedrate
sg02 G2 # Circular interpolation CW
sg03 G3 # Circular interpolation CCW
sgcode # Target string
fstrsel sg00 gcode sgcode
# --------------------------------------------------------------------------
# Select incremental or absolute G code
sg90 G90 # Absolute G code
sg91 G91 # Incremental G code
sgabsinc # Target string
fstrsel sg90 absinc sgabsinc
# --------------------------------------------------------------------------
# Select spindle start
sm04 M4 # Spindle reverse
sm05 M5 # Spindle off
sm03 M3 # Spindle forward
spdlon # Target string
fstrsel sm04 spdlsel spdlon
# --------------------------------------------------------------------------
# Cutter compensation code
scc0 "" # Cutter compensation state not changed
sg40 G40 # Cancel cutter compensation
sg41 G41 # Cutter compensation left
sg42 G42 # Cutter compensation right
sg140 G40 # Last linear move cancel cutter comp (see note)
# Note: to cancel comp after last move, remove G40 string
# with sg140 and remove "#" at the postline call "pcancelcc"
sccomp # Target string
fstrsel scc0 ccomp sccomp
# --------------------------------------------------------------------------
# Select work plane G code
sg17 G17 # XY plane code
sg19 G19 # XZ plane code
sg18 G18 # YZ plane code
sgplane # Target string
fstrsel sg17 plane sgplane
# --------------------------------------------------------------------------
# Work coordinate system
sg50 G92 # Work coordinate system G code
sg51 G92 # " " " " "
sg52 G92 # " " " " "
sg53 G92 # " " " " "
sg54 G54 # " " " " "
sg55 G55 # " " " " "
sg56 G56 # " " " " "
sg57 G57 # " " " " "
sg58 G58 # " " " " "
sg59 G59 # " " " " "
sgwcs # Target string
fstrsel sg50 mi1 sgwcs
# --------------------------------------------------------------------------
# Canned drill cycle string select
sg81 G81 # drill - no dwell
sg81d G82 # drill - with dwell
sg83 G83 # peck drill - no dwell
sg83d G83 # peck drill - with dwell
sg73 G73 # chip break - no dwell
sg73d G73 # chip break - with dwell
sg84 G84 # tap - no dwell
sg84d G74 # tap - with dwell (selects left hand)
sg85 G85 # bore #1 - no dwell
sg85d G89 # bore #1 - with dwell
sg86 G86 # bore #2 - no dwell
sg86d G86 # bore #2 - with dwell
sgm1 G81 # misc #1 - no dwell
sgm1d G82 # misc #1 - with dwell
sgm2 G81 # misc #2 - no dwell
sgm2d G82 # misc #2 - with dwell
sgdrill # Target string
drlgsel = drillcyc * 2 + fsg2 ( dwell ) # 16 possible combinations:
# drillcyc = 0..7
# dwell = 0 or non-zero (2 states)
fstrsel sg81 drlgsel sgdrill
# --------------------------------------------------------------------------
# Generate 'sgear' string
sgear0 M** # auto gear range
sgear1 M41 # Low gear range
sgear2 M42 # Med gear range
sgear3 M43 # High gear range - selected in parameters by mi3
sgear
fstrsel sgear0 gear sgear
# --------------------------------------------------------------------------
# POSTLINES, USER-DEFINED - Postline labels start with 'p'.
# End a line with ',' to continue on the next line.
# End a line with ', e' to generate carriage return and linefeed.
# --------------------------------------------------------------------------
# Program general output control, user defined
# --------------------------------------------------------------------------
pinit # Initialize Vars
prv_fr = 999.999
prv_frdeg = 999.999
prv_frplunge = 999.999
linarc = 0
rotstrt = 1
pcomment # Manual Entry - COMMENTS (on a block by itself) 1005,1006
"(", scomm, ")"
pabs # Absolute G code output
absinc = 0
sgabsinc
pinc # Incremental G code output
absinc = 1
sgabsinc
pcooloff # Coolant off "M" code output
if prv_coolant > 0, "M09"
pcoolon # Coolant off "M" code output
if coolant = 1, "M08" # Flood
if coolant = 2, "M08" # Mist
pcoolnl # Coolant off "M" code output
if coolant = 0, "M09" # Off
if coolant = 1, "M08" # Flood
if coolant = 2, "M08" # Mist
pfr # Feedrate W/O Negative Feedrates
if fr > 0, fr
pcan # Canned text - cantext = 0, 1, 2, 3
if cantext = 1, "M01" #optional stop
if cantext = 2, " " #user option
if cantext = 3, " " #user option
# --------------------------------------------------------------------------
# Work coordinate output, user defined
# --------------------------------------------------------------------------
pg92_sof # G92 coordinate setting at start
"/", n, pinc, "G28", "Z0.", e
"/", n, "G28", "X0.", "Y0.", e
"/", n, *sgwcs, *xh, *yh, *zh, e
pg92_out # G92 coordinate setting at tool change
"/", n, "G28", "X0.", "Y0.", e
if gcode <> 1003, "/", n, *sgwcs, *xh, *yh, *zh, e
pg92_tst # G92 coordinate test for output
if mi1 > 0, pg92_out
pwcs # G54+ coordinate setting
if mi1 >= 4, *sgwcs
# --------------------------------------------------------------------------
# Gear selection control, user defined
# --------------------------------------------------------------------------
pgear # Find spindle range
gear = frange ( 1, speed )
*gear
prange # Find spindle range
if use_gear = 1, pgear
# --------------------------------------------------------------------------
# Cutter comp. output control, user defined
# --------------------------------------------------------------------------
pccdia2 # Cutter Compensation2
if ccomp <> 4, tloffno
pccdia # Cutter Compensation
if ccomp <> 0, pccdia2
# --------------------------------------------------------------------------
# Axis substitution motion, user defined
# --------------------------------------------------------------------------
pdrlxyrot # Substitute Axis X/Y with Rotary axis w/ drilling
xangle = xs
yangle = ys
if rotaxis = 0, x, y
if rotaxis = 1, y, xangle
if rotaxis = 2, x, yangle
pfrd # Feedrate W/O Negative Feedrates (deg/min)
if frdeg > maxfrdeg, frdeg = maxfrdeg
if frdelta > .5, *frdeg #Value to exceed to output frdeg
protaxis1a # Substitute Axis X/Y with Rotary axis
if rotstrt = 0, n, sgcode, y, z, *xangle, pfrd, pcan, e
if rotstrt = 1, n, xangle, e
if rotstrt = 1, n, sgcode, y, z, pfrd, pcan, e
protaxis1 # Substitute Axis X/Y with Rotary axis
if gcode = 0, n, sgcode, y, z, *xangle, pcan, e
if gcode = 1, protaxis1a
protaxis2a # Substitute Axis X/Y with Rotary axis
if rotstrt = 0, n, sgcode, x, z, *yangle, pfrd, pcan, e
if rotstrt = 1, n, yangle, e
if rotstrt = 1, n, sgcode, x, z, pfrd, pcan, e
protaxis2 # Substitute Axis X/Y with Rotary axis
if gcode = 0, n, sgcode, x, z, *yangle, pcan, e
if gcode = 1, protaxis2a
protaxis # Substitute Axis X/Y with Rotary axis
xangle = xs
yangle = ys
if rotstrt = 1, !fr
if fr < 0, fr = prv_fr
!fr
if rotaxis = 1, ldelta = abs ( y - prv_y )
if rotaxis = 2, ldelta = abs ( x - prv_x )
zdelta = abs ( z - prv_z )
if rotaxis = 1, adelta = ( ( abs ( xangle - prv_xangle ) ) / 360 ) * circum
if rotaxis = 2, adelta = ( ( abs ( yangle - prv_yangle ) ) / 360 ) * circum
alzdelta = sqrt ( adelta^2 + ldelta ^2 + zdelta^2 )
frdegcalc = fr * ( 360 / circum )
if alzdelta <> 0, frdeg = ( adelta / alzdelta ) * frdegcalc
if adelta = 0, frdeg = fr
frdelta = abs ( frdeg - prv_frdeg )
if rotaxis = 1, protaxis1
if rotaxis = 2, protaxis2
if gcode = 1, rotstrt = 0
!x, !y, !z
protary # Rotary Move
if rotaxis = 1, xr = 0 #Force X to zero
if rotaxis = 2, yr = 0 #Force Y to zero
if rotaxis > 0, linarc = 1
circum = rotdia * pi
# --------------------------------------------------------------------------
# Axis linear/circular motion, user defined
# --------------------------------------------------------------------------
parctyp2 # Arc output for R w/ sign over 180 degree sweep
absswp = abs ( sweep )
if absswp <= 180, *arcrad
if absswp > 180, *arcradm
parctyp1 # Arc output for R w/ no sign
*arcrad
parctyp0 # Arc output for IJK
if plane = 0, *i, *j, k
if plane = 1, i, *j, *k
if plane = 2, *i, j, *k
parctyp # Select the arc output
if arcoutput = 0, parctyp0
if arcoutput = 1, parctyp1
if arcoutput = 2, parctyp2
prapidm # Linear line movement - at rapid feedrate
n, sgplane, sccomp, pccdia, sgcode, x, y, z, pcan
plinm # Linear line movement - at feedrate
n, sccomp, pccdia, sgcode, x, y, z, pfr, pcan
pcirm # Circular interpolation
n, sgplane, sccomp, pccdia, sgcode, x, y, z, parctyp, pfr, pcan
# --------------------------------------------------------------------------
# Drilling, user defined
# --------------------------------------------------------------------------
pdrillref # Determine G98 or G99
if initht <> refht, drillref = 98
if initht = refht, drillref = 99
pdwell # Determine whether to output dwell
if dwell <> 0, *dwell
ptlchg0dr3 # Null tool change for drilling
gcode = 0
if zr < prv_zr, n, sgcode, *xr, *yr, e
n, sgcode, *zr, e
ptlchg0dr2 # Null tool change for drilling
if zr <> prv_zr, ptlchg0dr3
ptlchg0drl # Null tool change for drilling
if prv_opcode = 3, ptlchg0dr2
# --------------------------------------------------------------------------
# POSTLINES, PRE-DEFINED - Postline names are pre-assigned.
# Lines do not need to end with ', e' for carriage return and linefeed.
# --------------------------------------------------------------------------
pheader # File header
"(PROGRAM NAME -", progname, ")"
"(DATE, Day-Month-Year - ", date, " TIME, Hr:Min - ", time, ")"
psof0 # Start of file for tool zero
psof
psof # Start of file for non-zero tool number
pinit
!opcode, !coolant
if tcnt = 1, stagetool = 2
" ", e
"%"
progno
comment
n, "G00 G40 G49 G80 G90"
if mi1 <= 3, pg92_sof
if stagetool = 0, n, *t, "M06"
if stagetool = 1, n, *next_tool, "M06"
protary
n, "G00", pabs, pwcs, *xr, *yr, *speed, *spdlon, prange
n, "G43", tlngno, *zr, pcoolon
ptlchg0 # Null tool change
if opcode = 3, ptlchg0drl
if prv_speed <> speed, n, speed
if coolant <> prv_coolant, n, pcoolnl
!opcode, !zr, !coolant
ptlchg # Tool change
pinit
!opcode
n, "M05"
n, pinc, "G28", "Z0.", pcooloff
if mi1 <= 3, pg92_tst
if stagetool = 0, n, *t, "M06"
if stagetool = 1, n, *next_tool, "M06"
n, "M01"
comment
protary
n, "G00", pabs, pwcs, *xr, *yr, *speed, *spdlon, prange
n, "G43", tlngno, *zr, pcoolon
!coolant
peof0 # End of file for tool zero
peof
peof # End of file for non-zero tool
n, "M05"
n, pinc, "G28", "Z0.", pcooloff
if mi1 <= 3, pg92_tst
if stagetool = 1, n, *first_tool, "M06"
n, pabs
n, "M30"
"%"
# --------------------------------------------------------------------------
# Axis motion
# --------------------------------------------------------------------------
prot0 # Toolplane postline - Custom post required
prot # Toolplane postline - Custom post required
prapid # Linear line movement - at rapid feedrate
if rotaxis <> 0, protaxis
if rotaxis = 0, prapidm
pzrapid # Linear movement in Z axis only - at rapid feedrate
n, sgcode, z
plin1 # First linear movement after SOF, whatno must be set
plin2 # Second linear movement after SOF, whatno must be set
plin # Linear line movement - at feedrate
if rotaxis <> 0, protaxis
if rotaxis = 0, plinm
pz # Linear movement in Z axis only - at feedrate
n, sgcode, z, pfr
pcir1 # First circular movement after SOF, whatno must be set
pcir2 # Second circular movement after SOF, whatno must be set
pcir # Circular interpolation
if rotaxis <> 0, protaxis
if rotaxis = 0, pcirm
# --------------------------------------------------------------------------
# Drilling
# --------------------------------------------------------------------------
pdrill # Canned Drill Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, pdwell, *frplunge
ppeck # Canned Peck Drill Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, *peck1, *frplunge
pchpbrk # Canned Chip Break Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, *peck1, *frplunge
ptap # Canned Tap Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, *frplunge
pbore1 # Canned Bore #1 Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, pdwell, *frplunge
pbore2 # Canned Bore #2 Cycle
pdrillref
n, *drillref, *sgdrill, pdrlxyrot, *depth, *refht, *frplunge
pmisc1 # Canned Misc #1 Cycle (User Option)
pdrill
pmisc2 # Canned Misc #2 Cycle (User Option)
pdrill
pdrill_2 # Canned Drill Cycle
n, pdrlxyrot, refht, depth
ppeck_2 # Canned Peck Drill Cycle
pdrill_2
pchpbrk_2 # Canned Chip Break Cycle
pdrill_2
ptap_2 # Canned Tap Cycle
pdrill_2
pbore1_2 # Canned Bore #1 Cycle
pdrill_2
pbore2_2 # Canned Bore #2 Cycle
pdrill_2
pmisc1_2 # Canned Misc #1 Cycle
pdrill_2
pmisc2_2 # Canned Misc #2 Cycle
pdrill_2
pcanceldc # Cancel canned drill cycle
!gcode
n, "G80"
pcancelcc # Cancel cutter comp.
#n, "G40"
pwrtt # Write tool table, scans entire file, null tools are negative
tnote = t
toffnote = tloffno
tlngnote = tlngno
if t >= 0, "(", *tnote, " ", *toffnote, " ", *tlngnote, " ", *tldia, " ",
*sopnote, ")"
if t >= 0, tcnt = tcnt + 1
# --------------------------------------------------------------------------
# Numbered questions for Mastercam -- Used by Mill 5
# --------------------------------------------------------------------------
38. Rapid feedrate? 300.0
76. Configuration file name?
80. Communications port number for receive and transmit (1 or 2) ? 2
81. Data rate (110,150,300,600,1200,2400,4800,9600,14400,19200,38400)? 300
82. Parity (E/O/N)? E
83. Data bits (7 or 8)? 7
84. Stop bits (1 or 2)? 2
85. Strip line feeds? N
86. Delay after end of line (seconds)? 0
87. Ascii, Eia, or Binary (A/E/B)? A
88. Echo keyboard to screen in terminal emulation? n
89. Strip carriage returns? N
90. Drive and subdirectory for NC and Material files?
91. Name of executable post processor? MP
92. Name of reverse post processor? RP
93. Reverse post PST file name? RPFAN
100. Number of places BEFORE the decimal point for sequence numbers? 3
101. Number of places AFTER the decimal point for sequence numbers? 0
103. Maximum spindle speed? 5000
107. Average time for tool change (seconds)? 2.0
110. Default tool library? TOOLS.MTL
# --------------------------------------------------------------------------
# Default Miscellaneous Real Values
# --------------------------------------------------------------------------
201. Default miscellaneous real variable 1 (mr1)? 0.0
202. Default miscellaneous real variable 2 (mr2)? 0.0
203. Default miscellaneous real variable 3 (mr3)? 0.0
204. Default miscellaneous real variable 4 (mr4)? 0.0
205. Default miscellaneous real variable 5 (mr5)? 0.0
206. Default miscellaneous real variable 6 (mr6)? 0.0
207. Default miscellaneous real variable 7 (mr7)? 0.0
208. Default miscellaneous real variable 8 (mr8)? 0.0
209. Default miscellaneous real variable 9 (mr9)? 0.0
210. Default miscellaneous real variable 10 (mr10)? 0.0
# --------------------------------------------------------------------------
# Default Miscellaneous Integer Values
# --------------------------------------------------------------------------
301. Default Work Coordinate System (0 thru 3=G92, 4 thru 9=G54-G59)? 1
302. Miscellaneous integer variable 2 (mi4)? 0
303. Miscellaneous integer variable 3 (mi4)? 0
304. Miscellaneous integer variable 4 (mi4)? 0
305. Miscellaneous integer variable 5 (mi5)? 0
306. Miscellaneous integer variable 6 (mi6)? 0
307. Miscellaneous integer variable 7 (mi7)? 0
308. Miscellaneous integer variable 8 (mi8)? 0
309. Miscellaneous integer variable 9 (mi9)? 0
310. Miscellaneous integer variable 10 (mi10)? 0